#pragma once
#include <Utilities/SpaceHash/neighbor_list.h>

namespace PhysLeo {

/**
 * describe the three kinds of weight type. 
 * 
 */
enum class PdmWeightType
{
    CENTER, AVERAGE, OUTER
};

/**
 * class to store the weight information.
 * define the array [] operator to provide a convenient data access.
 */
template<typename T>
class PdmWeight
{
public:
    T weight_[SPACE_HASH_MAX_NEIGHBOR];

    __host__ __device__ T& operator[](int index) { return weight_[index]; }
};

}